package cn.edu.hqu.cst.activity4;

import androidx.appcompat.app.AppCompatActivity;

import android.app.Service;
import android.content.ComponentName;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.Bundle;
import android.os.IBinder;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity
{
    Button bind,unbind,getServiceStatus;
    BindService.MyBinder binder;
    private ServiceConnection conn=new ServiceConnection()
    {
        @Override
        public void onServiceConnected(ComponentName name, IBinder service)
        {
            System.out.println("--Service Connected--");
            binder=(BindService.MyBinder)service;
        }
        @Override
        public void onServiceDisconnected(ComponentName name)
        {
            System.out.println("--Service Disconnected--");
        }
    };
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        bind=(Button)findViewById(R.id.bind);
        unbind=(Button)findViewById(R.id.unbind);
        getServiceStatus=(Button)findViewById(R.id.getServiceStatus);
        final Intent intent=new Intent(this,BindService.class);
        bind.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View source)
            {
                bindService(intent,conn, Service.BIND_AUTO_CREATE);
            }
        });
        unbind.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View source)
            {
                Toast.makeText(MainActivity.this,"Service的count值为："+binder.getCount(),
                        Toast.LENGTH_SHORT).show();
            }
        });
        getServiceStatus.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View source){
                // 获取、并显示Service的count值
                Toast.makeText(MainActivity.this
                        , "Serivce的count值为：" + binder.getCount()
                        , 4000).show();
            }
        });

    }
}
